Authentication is the process of identifying an individual, usually based on a username and password. In security systems, authentication is distinct from authorization, which is the process of giving individuals access to system objects based on their identity. Typically, authentication is performed with the full knowledge of the user. For example, the user may need to explicitly provide a user name and password in order to be authenticated. In other instances, a certificate or other key may need to be provided in order to be authenticated.
Additionally, once authentication has been completed and a data exchange session has begun, the system may have a need to synchronize data between a server and a client device. This can be performed by either performing full synchronization periodically (e.g., the entire data set is retransmitted to the client device), performing incremental synchronization periodically (e.g., only newly modified data is transmitted to the client device), or some combination of the two. Incremental synchronization, however, requires significant computing overhead to manage the monitoring of changes to the data set, track those changes, and coordinate synchronizations.
The headings provided herein are merely for convenience and do not necessarily affect the scope or meaning of the terms used.